home *** CD-ROM | disk | FTP | other *** search
- import java.awt.Event;
- import java.io.DataInputStream;
-
- public class CCourseAction extends CAction {
- static final int COURSE_RETURN = 2;
- static final int COURSE_CLOSE = 8;
- static final int COURSE_UNLOAD = 16;
- static final int COURSE_UNLOAD_ONLY = 32;
- static final int USE_START_TASK = 64;
- protected String m_strFilename = "";
- protected int m_nFlags = 0;
- protected CVarOrValue m_vvStartTask = new CVarOrValue();
-
- boolean LoadFromFile(DataInputStream var1) {
- this.m_nFlags = FileLoad.ReadCPlusInt(var1);
- this.m_strFilename = FileLoad.ReadCString(var1);
- this.m_vvStartTask.LoadFromFile(var1);
- return super.LoadFromFile(var1);
- }
-
- public CCourseAction() {
- super(30);
- }
-
- boolean DoAction() {
- boolean var1 = true;
- if (this.m_strFilename.length() > 0 && Globals.CUR_COURSE != null) {
- String var2 = Globals.CUR_COURSE.ConstructFileName(this.m_strFilename);
- CCourse var3 = Globals.thePresView.FindCourseDoc(var2);
- if ((this.m_nFlags & 32) != 0) {
- if (var3 != null && var3 != Globals.CUR_COURSE && var3.GetCalledFromCourse() == null) {
- if (Globals.thePresView.CanCloseCourse(var3)) {
- Globals.thePresView.CloseCourse(var3);
- }
-
- Globals.CUR_COURSE.SetCalledFromCourse();
- }
- } else {
- CCourse var4 = Globals.CUR_COURSE;
- Globals.CUR_COURSE = var3 == null ? Globals.thePresView.OpenCourse(var2) : var3;
- if (Globals.CUR_COURSE != null) {
- if ((this.m_nFlags & 2) != 0) {
- Globals.CUR_COURSE.SetCalledFromCourse(var4);
- if ((this.m_nFlags & 16) != 0) {
- Globals.CUR_COURSE.m_bUnload = true;
- }
- } else if ((this.m_nFlags & 8) != 0) {
- if (Globals.thePresView.CanCloseCourse(var4)) {
- Globals.thePresView.CloseCourse(var4);
- }
-
- Globals.CUR_COURSE.SetCalledFromCourse();
- } else {
- Globals.CUR_COURSE.SetCalledFromCourse();
- }
-
- Globals.thePresView.postEvent(new Event(Globals.thePresView, 2033, new Integer((this.m_nFlags & 64) != 0 ? this.m_vvStartTask.GetValue() : 0)));
- var1 = false;
- } else {
- Globals.CUR_COURSE = var4;
- }
- }
- }
-
- return var1;
- }
- }
-